unRAR pro delphi

Otázka od: david.kopecek@hacktrack.com

22. 9. 2004 12:07

Zdravim

nevite nekdo o cistem prepisu unity unRAR.c z C++ do delphi ?...

potreboval bych to pouzit do me aplikace a prepisovat se mi to nejak
nechce...

a abbreavia mi moc nevyhovuje je moc velka a ja potrebuju delat i
upravy v tom koudu.

--
S pozdravem,
David



Odpovedá: Tomas Runa

22. 9. 2004 12:37

Ja pouzivam toto:

// Delphi interface unit for UnRar.dll
// Translated from UnRar.h
// Use Delphi 3.0 or higher to compile this module
//
// Ported to Delphi by Eugene Kotlyarov, fido: 2:5058/26.9

unit UnRar;

{$ALIGN OFF}

interface

uses Windows;

const
  ErrMessages : array[10..20] of string =
    ('Unexpected end of archive',
     'No memory',
     'Bad archive data',
     'Bad archive',
     'Unknown archive format',
     'Cannot open archive',
     'Cannot create destination file',
     'Cannot close file',
     'Cannot read file',
     'Cannot write file',
     'Small buffer');

  ERAR_END_ARCHIVE = 10;
  ERAR_NO_MEMORY = 11;
  ERAR_BAD_DATA = 12;
  ERAR_BAD_ARCHIVE = 13;
  ERAR_UNKNOWN_FORMAT = 14;
  ERAR_EOPEN = 15;
  ERAR_ECREATE = 16;
  ERAR_ECLOSE = 17;
  ERAR_EREAD = 18;
  ERAR_EWRITE = 19;
  ERAR_SMALL_BUF = 20;

  RAR_OM_LIST = 0;
  RAR_OM_EXTRACT = 1;

  RAR_SKIP = 0;
  RAR_TEST = 1;
  RAR_EXTRACT = 2;
 
  RAR_VOL_ASK = 0;
  RAR_VOL_NOTIFY = 1;

type
  RARHeaderData = record
    ArcName,
    FileName: array[0..Pred(260)] of Char;
    Flags,
    PackSize,
    UnpSize,
    HostOS,
    FileCRC,
    FileTime,
    UnpVer,
    Method,
    FileAttr: UINT;
    CmtBuf: PChar;
    CmtBufSize,
    CmtSize,
    CmtState: UINT;
  end;

  RAROpenArchiveData = record
    ArcName: PChar;
    OpenMode,
    OpenResult: UINT;
    CmtBuf: PChar;
    CmtBufSize,
    CmtSize,
    CmtState: UINT;
  end;


type
  TChangeVolProc = function(ArcName: PChar; Mode: Integer): Integer; cdecl
export;
  TProcessDataProc = function(Addr: PUChar; Size: Integer): Integer; cdecl
export;

const
  _unrar = 'Unpack.dll';

function RAROpenArchive(var ArchiveData: RAROpenArchiveData): THandle;
  stdcall; external _unrar;
function RARCloseArchive(hArcData: THandle): Integer;
  stdcall; external _unrar;
function RARReadHeader(hArcData: THandle; var HeaderData: RARHeaderData):
Integer;
  stdcall; external _unrar;
function RARProcessFile(hArcData: THandle; Operation: Integer; DestPath,
DestName: PChar): Integer;
  stdcall; external _unrar;
procedure RARSetChangeVolProc(hArcData: THandle; ChangeVolProc:
TChangeVolProc);
  stdcall; external _unrar;
procedure RARSetProcessDataProc(hArcData: THandle; ProcessDataProc:
TProcessDataProc);
  stdcall; external _unrar;
procedure RARSetPassword(hArcData: THandle; Password: PChar);
  stdcall; external _unrar;

implementation

end.

-----Original Message-----
From: delphi-l-owner@clexpert.cz [mailto:delphi-l-owner@clexpert.cz] On Behalf
Of david.kopecek@hacktrack.com
Sent: Wednesday, September 22, 2004 1:06 PM
To: delphi-l@clexpert.cz
Subject: unRAR pro delphi

Zdravim

nevite nekdo o cistem prepisu unity unRAR.c z C++ do delphi ?...

potreboval bych to pouzit do me aplikace a prepisovat se mi to nejak
nechce...

a abbreavia mi moc nevyhovuje je moc velka a ja potrebuju delat i
upravy v tom koudu.

--
S pozdravem,
David




Odpovedá: Otakar Tofel

22. 9. 2004 14:05

david.kopecek@hacktrack.com napsal(a):

>Zdravim
>
>nevite nekdo o cistem prepisu unity unRAR.c z C++ do delphi ?...
>
>
>
>
Ahoj,
  pro unRAR pouzivam komponentu TDFUnRar - vyhovuje. Je k ni potreba jeste
soubor unrar.dll.

---
  Otakar Tofel


Odpovedá: david.kopecek@hacktrack.com

22. 9. 2004 13:51

Zdravim

>>Zdravim
>>
>>nevite nekdo o cistem prepisu unity unRAR.c z C++ do delphi ?...
>>
>>
>>
>>
OT> Ahoj,
OT> pro unRAR pouzivam komponentu TDFUnRar - vyhovuje. Je k ni potreba jeste
OT> soubor unrar.dll.


no to prave nechci .. unrar.c nepouziva zadnou dalsi DLL.. nasel jsem
hafo reseni co pouzivaj unrar.dll ale tak to bohuzel nemuzu.

D



Odpovedá: david.kopecek@hacktrack.com

22. 9. 2004 14:45

Zdravim

TR> // Delphi interface unit for UnRar.dll
TR> // Translated from UnRar.h
TR> // Use Delphi 3.0 or higher to compile this module

mno prave to nemuzu to taky pouziva externi dll..

jen tak pro upresneni jmenuje se to unrarlib.c knihovna

--
S pozdravem,
David



Odpovedá: Tomas Juricek

22. 9. 2004 14:45

Bez externi DLL se neobejdes...musi ji pouzivat i unrar.c. Zdrojove kody pro
format RAR ma pokud vim jen a jen primo autor.

> -----Original Message-----
> From: delphi-l-owner@clexpert.cz [mailto:delphi-l-owner@clexpert.cz] On
> Behalf Of david.kopecek@hacktrack.com
> Sent: Wednesday, September 22, 2004 2:50 PM
> To: delphi-l@clexpert.cz
> Subject: Re: unRAR pro delphi
>
> Zdravim
>
> >>Zdravim
> >>
> >>nevite nekdo o cistem prepisu unity unRAR.c z C++ do delphi ?...
> >>
> >>
> >>
> >>
> OT> Ahoj,
> OT> pro unRAR pouzivam komponentu TDFUnRar - vyhovuje. Je k ni potreba
> jeste
> OT> soubor unrar.dll.
>
>
> no to prave nechci .. unrar.c nepouziva zadnou dalsi DLL.. nasel jsem
> hafo reseni co pouzivaj unrar.dll ale tak to bohuzel nemuzu.
>
> D
>
>



Odpovedá: Petr Vones

22. 9. 2004 14:37

From: <david.kopecek@hacktrack.com>
> no to prave nechci .. unrar.c nepouziva zadnou dalsi DLL.. nasel jsem
> hafo reseni co pouzivaj unrar.dll ale tak to bohuzel nemuzu.

Pri trose stesti se ti podari prilinkovat tu c knihovnu jako OBJ.

Petr Vones


Odpovedá: mstevlik@gamo.sk

22. 9. 2004 14:54

> Ja pouzivam toto:
>
> // Delphi interface unit for UnRar.dll
> // Translated from UnRar.h
> // Use Delphi 3.0 or higher to compile this module
> //
> // Ported to Delphi by Eugene Kotlyarov, fido: 2:5058/26.9
.
.
.
.
> const
> _unrar = 'Unpack.dll';

Ahoj
Takze potrebujem k tomu kniznicu Unpack.dll alebo UnRar.dll?
A kde prislusnu dll mozem zohnat?

Stevlik Marian
ISYS programator

GAMO a.s.
Kyjevske nam. 6
974 04 Banska Bystrica
mail: mstevlik@gamo.sk
tel: +421 48 4137935, 4372111
ip-tel: 421 48 4372098
mobil: +412 905 462010
ICQ: 38493645

Odpovedá: Tomas Juricek

22. 9. 2004 14:55

> Takze potrebujem k tomu kniznicu Unpack.dll alebo UnRar.dll?
> A kde prislusnu dll mozem zohnat?

Nejlepe primo u autora: http://www.rarlab.com/rar_add.htm



Odpovedá: david.kopecek@hacktrack.com

22. 9. 2004 14:41

Zdravim

TJ> Bez externi DLL se neobejdes...musi ji pouzivat i unrar.c. Zdrojove kody
pro
TJ> format RAR ma pokud vim jen a jen primo autor.

tak to je blbost.. unrarlib.c nevyuziva zadnou dll. a pochybuju o tom
ze zdrojaky RAR mam jenom autor..

D.

>> -----Original Message-----
>> From: delphi-l-owner@clexpert.cz
>> [mailto:delphi-l-owner@clexpert.cz] On
>> Behalf Of david.kopecek@hacktrack.com
>> Sent: Wednesday, September 22, 2004 2:50 PM
>> To: delphi-l@clexpert.cz
>> Subject: Re: unRAR pro delphi
>>
>> Zdravim
>>
>> >>Zdravim
>> >>
>> >>nevite nekdo o cistem prepisu unity unRAR.c z C++ do delphi ?...
>> >>
>> >>
>> >>
>> >>
>> OT> Ahoj,
>> OT> pro unRAR pouzivam komponentu TDFUnRar - vyhovuje. Je k ni potreba
>> jeste
>> OT> soubor unrar.dll.
>>
>>
>> no to prave nechci .. unrar.c nepouziva zadnou dalsi DLL.. nasel jsem
>> hafo reseni co pouzivaj unrar.dll ale tak to bohuzel nemuzu.
>>
>> D
>>
>>








--
S pozdravem,
 david
 david.kopecek@hacktrack.com



Odpovedá: Tomas Juricek

22. 9. 2004 14:41

> TJ> Bez externi DLL se neobejdes...musi ji pouzivat i unrar.c. Zdrojove
> kody pro
> TJ> format RAR ma pokud vim jen a jen primo autor.
>
> tak to je blbost.. unrarlib.c nevyuziva zadnou dll. a pochybuju o tom
> ze zdrojaky RAR mam jenom autor..
>
Trosku jsem to dopletl. Volne siritelny je pouze UnRar, vcetne zdrojaku.
Zkrojaky k RARu opravu nesezenes...



Odpovedá: Cermi

23. 9. 2004 17:08

Nebo jestli mas pristup k C++Builderu, tak ten soubor zkompilovat tam (do
*.obj souboru), a pak to normalne prilinkovat v delphi.

Cermi
ja.cermi@centrum.cz
ICQ 159971304
http://cermi.wz.cz
----- Original Message -----
From: <david.kopecek@hacktrack.com>
To: <delphi-l@clexpert.cz>
Sent: Wednesday, September 22, 2004 1:06 PM
Subject: unRAR pro delphi


> Zdravim
>
> nevite nekdo o cistem prepisu unity unRAR.c z C++ do delphi ?...
>
> potreboval bych to pouzit do me aplikace a prepisovat se mi to nejak
> nechce...
>
> a abbreavia mi moc nevyhovuje je moc velka a ja potrebuju delat i
> upravy v tom koudu.
>
> --
> S pozdravem,
> David
>
>
>
>
>